package com.zt.yongxinbao.service;

import com.zt.yongxinbao.dto.EmailParam;
import com.zt.yongxinbao.dto.UserRegistParam;
import com.zt.yongxinbao.entity.User;
import org.springframework.security.core.userdetails.UserDetails;
import org.springframework.stereotype.Service;

@Service
public interface UserService {
/*
    根据用户名查询用户
 */
    User getUserByUsername(String username);
/*
    登录方法
    username：用户名
    password: 密码
    返回的值：token
 */
    String login(String username,String password);
/*
获取用户信息
 */
    UserDetails loadUserByUsername(String username);
    /*
    检验用户注册是否合法
    0：合法
    1：用户名已被使用
    2：邮箱已被绑定
     */
    Integer registVaild(UserRegistParam userRegistParam);
    /*
    用户注册
     */
    User regist(UserRegistParam userRegistParam);
    /*
    根据用户名来修改邮箱
     */
    Boolean updateEmail(String username,String email);
    /*
    根据用户名修改密码
     */
    Boolean updatePassword(String username,String password);
    /*

    发送验证码
     */
   EmailParam sendMall(String email);
}
